package com.lancoo.znbkxx.teacher.aibkTestCoach.networkRequest.entity

import com.lancoo.znbkxx.teacher.model.AnswerArea
import com.lancoo.znbkxx.teacher.model.AnswerInfo
import com.lancoo.znbkxx.teacher.model.TextInfo

data class PaperEvaluationInfor(
        val CommentExportTags: CommentExportTagsEval,
        val PaperName: String,
        val SetName: String,
        val TempletID: String,
        val TypeList: List<TypeEval>
)

data class CommentExportTagsEval(
        var AnswerAnalysis: Boolean,
        var ListenText: Boolean,
        var ListenVideo: Boolean,
        var Zsd: Boolean
)

data class TypeEval(
        val EvalType: Int,
        val GenreID: Int,
        val GenreName: String,
        val QuesDetailList: List<QuesDetailEval>,
        val QuesList: List<QuesEval>,
        val TypeIndex: Int,
        val TypeName: String,
        val TypeNo: String
)

data class QuesDetailEval(
        val ChildList: List<ChildEval>,
        val AudioSpeed:Double,
        val DVAL: String,
        val EXVAL: String,
        val EvalType: Int,
        val GenreID: Int,
        val GenreName: String,
        val GenreType: String,
        val HVAL: String,
        val ImportKlgList: List<ImportKlgEval>,
        val IsOral: Boolean,
        val MainKlgList: List<MainKlgEval>,
        val ModelAnswerAreaList: List<AnswerArea>,
        val ModelAnswerInfoList: List<AnswerInfo>,
        val ModelTextInfoList: List<TextInfo>,
        val QuesAudio: QuesAudioEval,
        val QuesBody: String,
        val QuesBrief: String,
        val QuesChildNum: Int,
        val QuesID: String,
        val QuesLeaderContent: String,
        val SortNum: Int,
        val SpecialFeatureCodes: String,
        val Theme: String,
        val ThemeKlgList: List<ThemeKlgEval>,
        val TotalItemCount: Int,
        val TypeName: String,
        val TypeNo: String,
        val Resource: String
)

data class QuesEval(
        val Index: Int,
        val QuesID: String,
        val ScoreRate:String,
        val SortScoreRateList: List<SortScoreRate>
)

data class ChildEval(
        val ChildAnalysis: String,
        val ChildAnswer: String,
        val ChildAnswerType: Int,
        val ChildAsk: String,
        val ChildSectionName: String,
        val ChildDisplay: String,
        val ChildAudio: ChildAudioEval,
        val ChildOptionList: List<ChildOptionEval>,
        val ItemList: List<ItemEva>,
        val SortIndexType: Int
)

data class ImportKlgEval(
        val Code: String,
        val Name: String,
        val UniqueCode: String
)

data class MainKlgEval(
        val Code: String,
        val Name: String,
        val UniqueCode: String
)

data class QuesAudioEval(
        val Article: String,
        val Path: String,
        val TimeLength: Int
)

data class ThemeKlgEval(
        val Code: String,
        val Name: String,
        val UniqueCode: String
)

data class ChildAudioEval(
        val Path: String,
        val TimeLength: Int
)

data class ChildOptionEval(
        val IsRight: Boolean,
        val Option: String,
        val OptionIndex: String,
        val ShowType:Int,
        val Rate: String,
        val StuCount: String
)

data class ItemEval(
        val IsRemark: Boolean,
        val ItemAnalysis: String,
        val ItemAnswer: String,
        val ItemAskList: List<Any>,
        val ItemOptionList: List<ItemOptionEval>,
        val ItemSortIndex: String,
        val SortIndex: String
)

data class ItemOptionEval(
        val IsRight: Boolean,
        val Option: String,
        val OptionIndex: String,
        val Rate: String,
        val ShowType:Int,
        val StuCount: String
)

data class SortScoreRate(
        val Score: Double,
        val ScoreRate: String,
        val SortIndex: String
)